function cookie( key , value , options){
      // 如果不传递options参数的话，options为undefined, 如果说undefined进行取出运算会导致报错发生; 
      // 给options设置默认值; 
      if(!options){ // undefined , null , 0 , false
            options = {};
      }

      // 因为 expires过期事件是需要日期对象的所以需要提前判断,是不是需要创建这个日期对象; 
      if( options.expires ){
            var d = new Date();
            // 校准日期; 
            d.setHours( d.getHours() - 8 );
            // 设置日期;  我们以天为单位进行cookie有效时长设置; 
            d.setDate( d.getDate() + options.expires );
      }

      // 根据 key , value , options 去拼接一个字符串 ;
      var str = [
            key , "=" , value,
            // options里面的参数有三个， 如果这个参数存在我们就拼接，如果不存在我们就忽略; 
            options.path ?";path=" + options.path : "",
            options.domain?";domain=" + options.domain : "",
            options.expires ? ";expires=" + d : ""

      ].join("");
      
      document.cookie = str;
}
function removeCookie( name , path ){
      var options = { expires : -1 };
      // 如果有path就把path加入到options对象之中; 
      // 反之则什么都不做; 
      path ? options.path = path : "";
      cookie( name , null , options)
}
function getCookie( name ){
      var cookie_array = document.cookie.split("; ");
      for(var i = 0 ; i < cookie_array.length; i ++){
            var item_array = cookie_array[i].split("=");
            if(item_array[0] === name){
                 return item_array[1];
            }
      }
      return "";
}